package com.cd.university.db.mapper;

import com.cd.university.db.pojo.RolePermission;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;

@Mapper
public interface RolePermissionMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(RolePermission record);

    int insertSelective(RolePermission record);


    /**
     * 批量插入角色所拥有的权限id
     * @param rolePermissionList 权限角色集合
     */
    public void insertPermissionId(@Param(("rolePermissionList")) List<RolePermission> rolePermissionList);

    /**
     * 根据角色id查询所有的权限id
     * @param roleId 角色Id
     * @return 角色的所有权限id
     */
    public List<RolePermission> searchPermissionByRoleId(Integer roleId);

    /**
     * 删除用户角色的权限id
     * @param param 包含了两个一个是用户的角色，另一个是要删除的权限set集合
     */
    public void deletePermissionId(HashMap param);

    /**
     * 查询所有的角色和项目
     * @return 角色和权限id
     */
    public List<RolePermission> searchAllRoleAndPermission();
}
